/***
 * 此文件对axios进行二次封装,指定一些axios请求的参数(axios.create)
 */
import axios from 'axios'
//进度条包
//如果想修改其中的样式,可以直接改其.css的源码
import nProgress from 'nprogress'
//引入nprogress样式模块,才能生效
import 'nprogress/nprogress.css'
const instance = axios.create({
    //此设置在每个路径前加一个前缀
    baseURL:'/mock',
    timeout:5000
})

//请求拦截器
//例如:可以设置滚动条;可以设置和接收请求头
//interceptors:拦截器
//request:请求
//use:使用
instance.interceptors.request.use((config) => {
    nProgress.start()
    return config
})

//响应拦截器
instance.interceptors.response.use((response) => {
    nProgress.done()
    return response.data
},(error) => {
    nProgress.done()
    //终止Promise链
    return Promise.reject(error)
})

export default instance